home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 March / PCWorld_2007-03_cd.bin / domacnost a kancelar / scribus / scribus-1.3.3.7-win32-install.exe / lib / hotshot / stones.py < prev   
Text File  |  2003-04-07  |  808b  |  32 lines

  1. import errno
  2. import hotshot
  3. import hotshot.stats
  4. import os
  5. import sys
  6. import test.pystone
  7.  
  8. def main(logfile):
  9.     p = hotshot.Profile(logfile)
  10.     benchtime, stones = p.runcall(test.pystone.pystones)
  11.     p.close()
  12.  
  13.     print "Pystone(%s) time for %d passes = %g" % \
  14.           (test.pystone.__version__, test.pystone.LOOPS, benchtime)
  15.     print "This machine benchmarks at %g pystones/second" % stones
  16.  
  17.     stats = hotshot.stats.load(logfile)
  18.     stats.strip_dirs()
  19.     stats.sort_stats('time', 'calls')
  20.     try:
  21.         stats.print_stats(20)
  22.     except IOError, e:
  23.         if e.errno != errno.EPIPE:
  24.             raise
  25.  
  26. if __name__ == '__main__':
  27.     if sys.argv[1:]:
  28.         main(sys.argv[1])
  29.     else:
  30.         import tempfile
  31.         main(tempfile.NamedTemporaryFile().name)
  32.